ra_ap_syntax 0.0.23

Comment and whitespace preserving parser for the Rust language
Documentation

Syntax Tree library used throughout the rust analyzer.

Properties:

  • easy and fast incremental re-parsing
  • graceful handling of errors
  • full-fidelity representation (any text can be precisely represented as a syntax tree)

For more information, see the RFC. Current implementation is inspired by the Swift one.

The most interesting modules here are syntax_node (which defines concrete syntax tree) and ast (which defines abstract syntax tree on top of the CST). The actual parser live in a separate parser crate, though the lexer lives in this crate.

See api_walkthrough test in this file for a quick API tour!